Coursera Machine Learning Lunar’s note

分类问题 Classfication

Linear regression 不适用分类问题

Logistic Regression

  • Model:Logistic function(Sigmoid function)
    hθ(x)=11+eθTx
  • Hypothesis Representation
    hθ(x)=P(Y=1|x;θ)
  • Decision boundary决策边界
    θTx 就是决策边界,在边界的不同side做不同决策,比如说θ0+θ1x1+θ2x2在图像中就是一条直线,直线上方和下方是不同class
    非线性决策边界 一次多项式不适用时可以使用高阶多项式
  • 代价函数cost function 线性回归中的代价函数用在这里会变成非凸函数(non-convex)所以要使用不同的代价函数(极大似然估计 maximum likelihood estimation)
    Cost(hθ(x),y)={log(1hθ(x))(y=0)log(hθ(x))(y=1)
  • 简化版本 Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))
    y=0or1
  • J(θ)=1mi=1mCost(hθ(x(i)),y(i))
  • 拟合参数 fit parameters 梯度下降 Gradient Descent 方法和线性回归一样

    高级优化 Advanced Optimization

  • Conjugate gradient
  • BFGS
  • L-BFGS
    advantages:

    • 不需要选择学习速率
    • 比梯度下降更快

    disadvantages:

    • 更复杂
      这里还有提到许多通用的梯度下降算法的变种和优化。  

      多元分类 Multiclass calssification

      One-vs-all
      分成n次二元分类问题,选取max(hθ(i)(x))

过度拟合问题 Overfitting

欠拟合(underfit 或 High bias)

预测偏差较大

过拟合(overfitting)

(或 High variance) 对于训练集拟合得很好,但是对new example表现不佳。

解决过度拟合

  • 减少特征变量
  • 正则化(Regularization)

    正则化

    减小某些特征值的参数值(θi),通常我们能获得一个更“简单”的假设(“Simpler”hypothesis),更不易于过度拟合。
  • How
    使用新的cost function
    J(θ)=12m[i=1m(hθ(x(i))y(i))2+λj=1nθj2]
    那么最小化J(θ)的过程中(使用梯度下降或者正规方程都可以),θj也会逐渐变小。但是过大的λ比如109会导致欠拟合。
    • Logistic regression中的正则化,注意cost function中最后一项
      J(θ)=[1mi=1mylog(hθ(x))+(1y)log(1hθ(x))]+λ2mj=1nθj2